5498
2331
Cette question a déjà des réponses ici:
Comment renvoyer la réponse d'un appel asynchrone?
(42 réponses)
Fermé il y a 5 mois.
Ainsi, lors de l'exécution du code suivant, la réponse de console.log (ba) n'est pas définie
Mais lorsque j'essaye cela dans la console Chrome V8, j'obtiens le résultat correct que j'attends. Je ne suis pas tout à fait sûr de ce qui se passe ici.
let ba;
function Setqa () {
(async () => {
attendre fetch ('questions.json')
.then (res => res.json ())
.then (asynchrone (données) => {
ba = attendre les données;
});
}) ();
}
Setqa ();
console.log (ba);
Le contenu du fichier json est le suivant:
"des questions": [{
"questionType": "multiple",
"question": "Comment est le temps",
"réponses": "",
"Question Réponse": ""
},
{
"questionType": "multiple",
"question": "Comment vas-tu aujourd'hui?",
"answers": " 1",
"questionAnswer": "textPurpose1"
}
] 
Je suppose que ça devrait marcher
let ba;
function Setqa () {
return fetch ('questions.json')
.then (res => res.json ())
.then (asynchrone (données) => {
ba = attendre les données;
});
}
Setqa (). Then (() => console.log (ba));
Mais une meilleure approche serait
fonction asynchrone setQa () {
const res = attendre fetch ('questions.json');
retourne res.json ();
}
let ba = attendre setQa ();
|
Ce n'est pas la réponse que vous recherchez? Parcourez les autres questions marquées javascript json fetch console.log ou posez votre propre question.